/**
 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 * $Id$ CatalogServiceMock.java
 * Universidad de los Andes (Bogotá - Colombia)
 * Departamento de Ingeniería de Sistemas y Computación
 * Licenciado bajo el esquema Academic Free License version 2.1
 *
 * Ejercicio: Muebles los Alpes
 * Autor: Camilo Alvarez
 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 */
package com.losalpes.catalogo.servicios;

import com.losalpes.catalogo.bos.Mueble;
import com.losalpes.catalogo.bos.TipoMueble;
import java.util.ArrayList;
import java.util.List;

/**
 * Implementacion de los servicios del catalogo que se le prestan al sistema. [Mock Object]
 * @author Camilo Alvarez
 */
public class CatalogServiceMock implements ICatalogService {

    // --------------------------------------------
    // Atributos
    // --------------------------------------------

    /**
     * Colección de muebles que existen en el catalogo.
     */
    private ArrayList<Mueble> ms = new ArrayList<Mueble>();

    // --------------------------------------------
    // Constructor
    // --------------------------------------------

    /**
     * Constructor de la clase. Inicializa los atributos.
     */
    public CatalogServiceMock() {
            for (int i = 0; i < 10; i++) {
                Mueble m = new Mueble("001"+i, "Mueble" + i, "Descripción del mueble " + i, TipoMueble.Exterior);
                ms.add(m);
            }
    }

    // --------------------------------------------
    // Métodos
    // --------------------------------------------

    /**
     * Agrega un nuevo mueble al catalogo de muebles.
     * @param cMueble. Nuevo mueble.
     */
    public void add(Mueble cMueble) {
        ms.add(cMueble);
    }

    /**
     * Retorna la lista de todos los muebles que existen en el catalogo.
     * @return muebles. Lista de todos los muebles que existen en el catalogo.
     */
    public List<Mueble> findAllMuebles() {
        return ms;
    }
}